#ifndef DEF_NURBS
#define DEF_NURBS

#include <vector>

#include "Line.h"


class Nurbs : public Line
{

public:
	Nurbs();
	Nurbs(float* vertex, int nbPoints, int degree, float* weight, float step);
	~Nurbs();

protected:
	void computePassagePoints(float* vertex, int nbPoints, int degree, float* weight, float step);
	int* computeIntervals(int nbPoints, int degree);
	float* evaluate(float* vertex, int nbPoints, int* knots, int degree, float* weight, float t);
	float computeValue(int* intervals, float value, int step, int degree);



};

#endif